/*!
 * \file StabSolver.h
 * \brief Interfaz StabSolver
 *
 *  Created on: Jan 24, 2014
 *      Author: ik
 */

#ifndef STABSOLVER_H_
#define STABSOLVER_H_

#include <Grafo.h>
#include <DoubleValueArray.h>
#include <SeparatorParameters.h>

/*!
 * \class StabSolver
 * \brief Interfaz para resolvedor de programas lineales o enteros.
 */
class StabSolver
{
public:
	StabSolver() {};
	virtual ~StabSolver() {};
	/*!
	 * \fn DoubleValueArray* solve(SeparatorParameters& parameters)
	 * \brief  Ejecuta el algoritmo entero
	 *
	 * \param parameters Para controlar ejecución
	 */
	virtual DoubleValueArray* solve(SeparatorParameters& parameters) = 0;
	/*!
	 * \fn DoubleValueArray* solveLinearRelaxation()
	 * \brief Ejecuta la relajacion lineal.
	 */
	virtual DoubleValueArray* solveLinearRelaxation() = 0;
};

#endif /* STABSOLVER_H_ */
